GdkEventAny *event);
static gint gtk_window_configure_event (GtkWidget *widget,
GdkEventConfigure *event);
+static gboolean gtk_window_event (GtkWidget *widget,
+ GdkEvent *event);
static gint gtk_window_key_press_event (GtkWidget *widget,
GdkEventKey *event);
static gint gtk_window_key_release_event (GtkWidget *widget,
widget_class->unrealize = gtk_window_unrealize;
widget_class->size_allocate = gtk_window_size_allocate;
widget_class->configure_event = gtk_window_configure_event;
+ widget_class->event = gtk_window_event;
widget_class->key_press_event = gtk_window_key_press_event;
widget_class->key_release_event = gtk_window_key_release_event;
widget_class->focus_in_event = gtk_window_focus_in_event;
return gtk_window_handle_wm_event (GTK_WINDOW (widget), event);
}
+static gboolean
+gtk_window_event (GtkWidget *widget,
+ GdkEvent *event)
+{
+ if (widget != gtk_get_event_widget (event))
+ return gtk_window_handle_wm_event (GTK_WINDOW (widget), event);
+
+ return GDK_EVENT_PROPAGATE;
+}
+
static void
gtk_window_real_activate_default (GtkWindow *window)
{